#ifndef _TEST_H_
#define _TEST_H_

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>


typedef int data_type;


typedef struct List{
    data_type *data; // 存储数据的指针
    int count; // 存储数据的个数
    int size; // 存储数据的总大小
}list;

typedef enum{
    OK,
    LIST_NOT_EXIST, // 表不存在
    INDEX_ERROR, // 索引错误
    LIST_FULL, // 表满
    LIST_EMPTY, // 表空
    DATA_NOT_EXIST, // 数据不存在
    
}RETVAL;

int menu(void); // 菜单
list *create_list(void); // 创建表
int list_insert(list *plist, int index, data_type data); // 插入
int list_show(list *plist); // 显示
int list_delete(list *plist, int index, data_type *data); // 删除
int list_modify(list *plist, data_type old_data,  data_type new_data); // 修改
int list_search(list *plist, data_type data); // 查找
list *load(void); // 加载
int save(list *plist); // 保存

#endif